Appointment Management API - TMF646
API Data Dictionary - PUSH Event Notifications
The following eventType notifications will be sent for Appointments:
POST /listener/appointmentCreateEvent
POST /listener/appointmentAttributeValueChangeEvent
POST /listener/appointmentStateChangeEvent
| Payload Field Name | Example Field Value | Description |
|---|---|---|
| eventId | 1c699169-1791-45d8-92a4-cf9fa5286fcf | A unique event GUID. |
| eventTime | 2025-07-23T13:47:01.880Z | Timestamp of when this event was created. |
| eventType |
AppointmentCreateEvent AppointmentAttributeValueChangeEvent AppointmentStateChangeEvent |
The type of the event. These are TMF defined values. Can be any of the three values. |
| correlationId | 1f7b021-96a5-4548-ab78-87f9ae917f81 | A GUID to relate requests belonging to the same transaction. It will be populated with Header parameter Correlation-ID value from request to end point that logic is to create the event notification. |
| title | Appointment Create Event | A title (similar to an email subject) for the appointment. |
| description | Appointment Create Event for new appointment | A more detailed description (similar to an email body) for the appointment. |
| priority |
1 - for AppointmentCreateEvent 2 - for AppointmentAttributeValueChangeEvent 3 - for AppointmentStateChangeEvent |
Event Priority. Can be any of the three values. To be used for outgoing notifications; in the event we have many concurrent ones Mulesoft would be processing by priority ascending (1 highest priority to 4 lowest). Also potentially suggesting partners what is the level of priority they should be dealing with any action we intend them to do. |
| timeOccurred | 2025-07-23T08:30:01.880Z | Timestamp of when the event occurred. |
PUSH Event Notifications - Response
POST /listener/appointmentCreateEvent
POST /listener/appointmentAttributeValueChangeEvent
POST /listener/appointmentStateChangeEvent
The response will be an HTTP 204 โNotifiedโ.
Objects details
requestedTimeslot object
| Field Name | Example Field Value | Description |
|---|---|---|
| validFor | ||
| validFor\startDateTime | 2025-02-15T08:00:00.000Z | Timestamp of the start time to get available appointments from. |
| validFor\endDateTime | 2025-02-18T08:00:00.000Z |
Timestamp of the end time the appointment is requested for. This is not required, but if populated it will be ignored. |
relatedEntity object
| Field Name | Example Field Value | Description |
|---|---|---|
| id |
PXTIP1234 FTTP1234 XXXXXXX BillingAccountId TicketId OrderId |
Client's unique Id e.g.: ProductId or AccessCASR or BillingAccountId or TicketId or OrderId |
| role |
relatedProduct relatedService relatedAccount relatedTicket relatedOrder |
Role played by the client. relatedProduct when id is a ProductId relatedService when id is an AccessCASR relatedAccount when id is a BillingAccountId relatedTicket when id is a TicketId relatedOrder when id is an OrderId |
| @referredType |
Product Service BillingAccount Ticket Order |
The actual type of the target resource. Product when id is a ProductId Service when id is an AccessCASR BillingAccount when id is a BillingAccountId Ticket when id is a TicketId Order when id is an OrderId |
Note that relatedEntity of @referredType=Ticket is expected in requests when an appointment is being reserved for an existing ticket
relatedPlace object
| Field Name | Example Field Value | Description |
|---|---|---|
| @type | GeographicAddress | |
| externalIdentifier.id |
A3456789000 LV 1000234981 |
GALK Value, DistrictCode Value or LPRN value |
| externalIdentifier.externalIdentifierType |
galk districtCode uprn |
The type of the external identifier |
| externalIdentifier.@type | ExternalIdentifier |
availableTimeSlot object
| Field Name | Example Field Value | Description |
|---|---|---|
| validFor | ||
| validFor\startDateTime | 2025-02-15T08:00:00.000Z | Timestamp of the start time of the time period for the appointment to start. |
| validFor\endDateTime | 2025-02-18T08:00:00.000Z | Timestamp of the end time of the time period for the appointment to start. |
note object
| Field Name | Example Field Value | Description |
|---|---|---|
| id | A note Id if it exists | |
| author | Openreach | The Author of the note. Eg. the supplier providing this note. |
| date | 2025-02-15T08:00:00.000Z | Timestamp of the note. |
| text | Engineer will arrive at 11:00am | Free text as provided by the Ticketing or Ordering systems. |
| attribute | attribute | Contains the note to for consistency with how #TMF621 uses notes. |
| @type | PartnerNote | To support the extension to the note. |
| @baseType | Note | To support the extension to the note. |